package com.burst.reptile.common.utils;


import java.text.CollationKey;
import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.Locale;

/**
 * 字符串按照拼音首字母排序
 * @author wujin
 *
 * @date: 2020年6月22日 下午12:33:29
 */
public class StrSortUtil {

	/**
	 * 按字母排序
	 * @param data
	 * @return
	 */
	public static List<String> sort(List<String> data) {
		Collections.sort(data, new Comparator<String>() {
			Collator collator = Collator.getInstance(Locale.CHINA);

			@Override
			public int compare(String o1, String o2) {
				CollationKey key1 = collator.getCollationKey(o1);
				CollationKey key2 = collator.getCollationKey(o2);
				return key1.compareTo(key2);
			}
		});
		return data;
	}
	
	public static void main(String[] args) {
		List<String> data = new ArrayList<String>();
		data.add("上海");
		data.add("天津");
		data.add("北京");
		data.add("深圳");
		data.add("广州");
		data.add("成都");
		data.add("西安");
		data.add("武汉");
		data.add("郑州");
		data.add("邯郸");
		data.add("安徽");
		List<String> sort = sort(data);
		System.out.println(sort);

	}
}
